bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Fri, 13 Jun 2025 07:05:47 +0000 (09:05 +0200)
committerSylvestre Ledru <sylvestre@debian.org>
Fri, 13 Jun 2025 07:05:47 +0000 (09:05 +0200)
commitbc83f3b561b74dbc8d49efa4e3a7af33bf63f11d
treeaffd0250106c4d9f6218c3393859d0fac52d9205
parent1899813daf9c40db15fcce25b3a898177b87776f
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h